/**
 * Copyright (c) 2021 Choice, Inc.
 * All Rights Reserved.
 * Choice Proprietary and Confidential.
 */
package cn.ruleengine.web.vo.generalrule;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

import lombok.Data;

/**
 * 互认请求模型
 *
 * @author <a href="mailto:danliang@myweimai.com">丹良</a>
 * @date 2021/7/28
 */
@Data
public class ConsensusRequest implements Serializable {
    private static final long serialVersionUID = 8158521208965925172L;

    /** 请求 appid */
    private String   appid;
    /** 请求 appsecret */
    private String   appsecret;
    /** 请求内容 */
    private List<It> items;

    @Data
    public static class It implements Serializable {
        private static final long serialVersionUID = 517513625920027528L;
        /** 互认编码 */
        private String              shareCode;
        /** 患者诊断信息ICD-10编码集合 */
        private List<Diagnosis>     diagnoses;
        /** 性别 1-男 2-女 3-未知 */
        private Integer             gender;
        /** 数值 23岁 6个月 6天 */
        private Integer             age;
        /** 岁 月 天 */
        private String              ageUnit;
        /** 是否是医共体 */
        private Boolean             isMedicalCommunity;
        /** 当前就诊的医院机构等级 */
        private Integer             orgLevel;
        /** 当前就诊的医院国家标准科室代码 */
        private String              departmentGbCode;
        /** 报告时间 */
        private String              reportTime;
        /** 报告结果正常标记 */
        private String              reportAbnormalIndicator;
        /** 报告类型 1-检验 2-检查 */
        private Integer             reportType;
        /** 报告机构级别 */
        private Integer             reportOrgLevel;
        /** 扩展字段 */
        private Map<String, Object> param;
    }

    @Data
    public static class Diagnosis implements Serializable {
        private static final long serialVersionUID = 6045703173396308889L;
        /** ICD-10编码 */
        private String code;
        /** 诊断结果 */
        private String type;
    }

}